package com.jprocms.module.cms.api.dto;


import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Set;

/**
 * @author jprocms
 */
@Data
public class SiteConfigBaseDto implements Serializable {
    private static final long serialVersionUID = 1L;
    /***
     * 文档标题重复设置 1允许重复 2站点查重 3同一栏目下不允许重复
     */
    @Schema(description = "文档标题是否允许重复 true：允许重复 false：不允许重复")
    @NotNull(message = "文档标题重复设置不能为空")
    private Boolean titleRepeat = true;

    @Schema(description = "网站变灰是否开启 true开启 false不开启")
    @NotNull(message = "网站变灰是否开启")
    private Boolean greyOpen = false;

    @Schema(description = "仅首页网站变灰 true开启 false不开启")
    @NotNull(message = "仅首页网站变灰")
    private Boolean onlyIndexGrey = false;
    /**
     * 是否使用第三方统计
     */
    @Schema(description = "是否使用第三方统计")
    @NotNull(message = "是否使用第三方统计不能为空")
    private Boolean openThirdStatistic = false;
    /**
     * 第三方统计代码
     */
    @Schema(description = "第三方统计代码")
    private String thirdStatisticCode;

    @Schema(description = "是否允许推送 true开启 false不开启")
    @NotNull(message = "是否允许推送")
    private Boolean allowPush = false;

    @Schema(description = "推送密钥")
    private String pushPass;

    @Schema(description = "推送是否需要工作流审批 (1需要 0 不需要)")
    @NotNull(message = "推送是否需要工作流审批")
    private Boolean pushNeedCheck;

    @Schema(description = "已发布内容修改是否需要再次提交审核 (1需要 0 不需要)")
    @NotNull(message = "已发布内容修改是否需要再次提交审核")
    private Boolean editPublishContentToSubmit;

    @Schema(description = "富文本图片最大宽度")
    private Integer editorPicMaxWidth;

    @Schema(description = "是否阻止内容复制")
    @NotNull(message = "是否阻止内容复制")
    private Boolean preventCopy = false;

    @Schema(description = "是否混淆内容")
    @NotNull(message = "是否混淆内容")
    private Boolean confuseContent = false;
    /**
     * 上传资源FTP数组
     */
    @Schema(description = "上传资源FTP")
    private Set<Long> resFtpIds;


}
